//  @ Project : GagalPanen
//  @ File Name : plantconstants.hpp
//  @ Date : 3/9/2011
//  @ Author : dolphinigle
//
//


#if !defined(_PLANTCONSTANTS_H)
#define _PLANTCONSTANTS_H

#include <string>

#include "harvesttype.hpp"

class PlantConstants {
public:
  static int getPlantCount();
  static std::string getPlantName(int plant_id);
  static int getFruitId(int plant_id);
  static HarvestType getPlantHarvestType(int plant_id);
  static int getPlantMatureTime(int plant_id);
  static int getPlantRipeTime(int plant_id, int number_of_times_harvested);
  static int getPlantDeadTime(int plant_id);
  static std::string getViewSeedRep(int plant_id);
  static std::string getViewMatureRep(int plant_id);
  static std::string getViewHarvestableRep(int plant_id);
  static std::string getViewDeadRep(int plant_id);
  static int getPlantSeasonMask(int plant_id);
private:
  static const int kPlantCount;
  static const std::string kPlantNames[];
  static const int kFruitIds[];
  static const HarvestType kPlantHarvestTypes[];
  static const int kPlantMatureTime[];
  static const int kPlantRipeTimeMultiplier[];
  static const int kPlantDeadTime[];
  static const int kPlantSeasonMask[];
};

#endif  //_PLANTCONSTANTS_H
